Fixture with cameras for acquiring images in a facility

ABSTRACT

An overhead fixture supports a plurality of cameras used to acquire images associated with a scene during operation of a facility. In one implementation, a first camera is mounted to the overhead fixture to acquire one or more images of a user, while a second camera is mounted to the overhead fixture to acquire one or more images of an inventory location or items at the inventory location. One or more light sources may be mounted on the overhead fixture and activated to produce light. The light may illuminate one or more of the user, the items at the inventory location, or other portions of the scene. Brilliance of the light sources may also obscure the cameras from observation by the user.

PRIORITY

This application is a continuation of and claims priority to and thebenefit of U.S. patent application Ser. No. 14/532,560, filed Nov. 4,2014, now U.S. Pat. No. 10,212,319, entitled “Camera PositioningFixture”.

Application Ser. No. 14/532,560 is incorporated by reference herein inits entirety.

BACKGROUND

Retailers, wholesalers, and other product distributors typicallymaintain an inventory of various items that may be ordered, purchased,leased, borrowed, rented, viewed, and so forth, by clients or customers.For example, an e-commerce website may maintain inventory in afulfillment center. When a customer orders an item, the item is pickedfrom inventory, routed to a packing station, packed, and shipped to thecustomer. Likewise, physical stores maintain inventory in customeraccessible areas (e.g., shopping area), and customers can pick itemsfrom inventory and take them to a cashier for purchase, rental, and soforth. Many of those physical stores also maintain inventory in astorage area, fulfillment center, or other facility that can be used toreplenish inventory located in the shopping areas or to satisfy ordersfor items that are placed through other channels (e.g., e-commerce).Other examples of entities that maintain facilities holding inventoryinclude libraries, museums, rental centers, and so forth. In eachinstance, for an item to be moved from one location to another, it ispicked from its current location and transitioned to a new location. Itis often desirable to monitor the movement of inventory, users, andother objects within the facility. This monitoring may be provided usingsensors, such as cameras.

BRIEF DESCRIPTION OF FIGURES

The detailed description is set forth with reference to the accompanyingfigures. In the figures, the left-most digit(s) of a reference numberidentifies the figure in which the reference number first appears. Theuse of the same reference numbers in different figures indicates similaror identical items or features.

FIG. 1 is a block diagram illustrating a materials handling facilitycomprising a fixture supporting multiple cameras, according to someimplementations.

FIG. 2 is a block diagram illustrating additional details of thematerials handling facility, according to some implementations.

FIG. 3 illustrates a block diagram of a server configured to supportoperation of the materials handling facility, according to someimplementations.

FIG. 4 illustrates a block diagram of a tote, according to someimplementations.

FIG. 5 illustrates a side view of an aisle in the materials handlingfacility and depicts an overhead fixture to which one or more camerasand light sources are affixed, according to some implementations.

FIG. 6 illustrates an overhead view of the fixture, according to someimplementations.

FIG. 7 illustrates an overhead view of the aisle in the materialshandling facility including a plurality of fixtures, according to someimplementations.

FIG. 8 illustrates a side view of the aisle in the materials handlingfacility and the camera on the fixture used to acquire an image of theuser, according to some implementations.

While implementations are described herein by way of example, thoseskilled in the art will recognize that the implementations are notlimited to the examples or figures described. It should be understoodthat the figures and detailed description thereto are not intended tolimit implementations to the particular form disclosed but, on thecontrary, the intention is to cover all modifications, equivalents andalternatives falling within the spirit and scope as defined by theappended claims. The headings used herein are for organizationalpurposes only and are not meant to be used to limit the scope of thedescription or the claims. As used throughout this application, the word“may” is used in a permissive sense (i.e., meaning having the potentialto), rather than the mandatory sense (i.e., meaning must). Similarly,the words “include,” “including,” and “includes” mean including, but notlimited to.

DETAILED DESCRIPTION

This disclosure describes fixtures for supporting cameras that may beused in a materials handling facility (facility) or other setting. Thefacility may include, or have access to, an inventory management system.The inventory management system may be configured to maintaininformation about items, users, condition of the facility, and so forth.For example, the inventory management system may maintain dataindicative of what items a particular user is ordered to pick, locationof the particular user, availability of a user providing supportservices to others, requests for assistance, environmental status of thefacility, and so forth. The inventory management system, or anothersystem, may generate this data based on images acquired from one or morecameras. For example, the images may be used to identify a user,identify an item, track a user, and so forth.

Cameras may be located at different points within the facility toacquire images suitable for particular uses. For example, a useridentification camera used to acquire images that are processed toidentify a user may be configured with a field-of-view (FOV) that islikely to include the user's face. In another example, an itemidentification camera used to acquire images that are processed toidentify an item may be configured with a FOV that is likely to includethe particular item or an inventory location at which that item may bestowed. In some implementations, the cameras may have different opticalor electronic characteristics based at least in part on the intendeduse. For example, the user identification camera may be configured toacquire images at a rate of 15 frames per second (FPS) while the itemidentification camera may be configured to acquire images at the rate of30 FPS.

In addition to placement within the facility, a camera may be orientedsuch that a corresponding FOV includes a portion of a scene associatedwith the particular use. For example, the user identification camera maybe configured with a first FOV directed down or along an aisle,encompassing a portion of a scene within which a head of a user wouldtypically appear during use of the facility. In another example, theitem identification camera may be configured with a second FOV directedtowards a particular inventory location or portion thereof.

The facility may include one or more fixtures. The fixture may include acentral member configured to be supported above the floor of thefacility. The central member may be supported by suspension from aceiling, support mounted to a wall, support mounted to an inventorylocation, a floor stand, and so forth.

The fixtures may include one or more arms. The one or more arms may beextensions of the central member. In another implementation, the one ormore arms may be mechanically coupled or otherwise affixed to thecentral member. The one or more arms may be configured to extenddownward from the central member such that a tip or distal portion ofthe arm is closer to the floor than the root or proximal portion of thearm where it joins or merges into the central member.

Mounted on an arm may be at least one user identification camera and atleast one item identification camera. The user identification camera maybe mounted on a portion of the arm that is proximal to the centralmember. The proximal portion of the arm is closer to the central memberthan a distal portion of the arm. The item identification camera may bemounted on a portion of the arm that is distal to the central member,such as near or at the tip of the arm.

As mentioned above, the user identification camera may be arranged suchthat the first FOV is directed down or along the aisle above which thefixture is mounted. Likewise, the item identification camera may bearranged such that the second FOV is directed towards a particularinventory location. For example, the item identification camera may havea second FOV that encompasses at least a portion of an inventorylocation that is positioned beneath an adjacent fixture.

In some implementations, cameras may be arranged to provide FOVs oneither side of the long axis of the central member. For example, a firstpair of cameras may look to the “left” of the long axis, while a secondpair of cameras may look to the “right” of the long axis. In someimplementations, such as in an aisle having inventory locations on twosides, arms may be present at both ends of the central member.

The fixture may include one or more light sources. The one or more lightsources are configured to produce light, which may be one or more ofinfrared, visible, or ultraviolet light. The one or more light sourcesmay produce light for one or more purposes. For example, the one or morelight sources may produce light for use by the cameras. In anotherexample, the one or more light sources may produce light for use by theuser of the facility. This light may be directed or focused to aparticular area, such as with a spotlight, or may be diffuse as with anarea light.

In one implementation, one or more light sources may be arrangedproximate to the cameras. While active to produce light, the one or morelight sources may produce sufficient illumination so as to discouragevisual inspection by the user of the camera. For example, the lightsource may be next to the camera and may be sufficiently bright that thebrilliance of the light source is uncomfortable for the user to gaze atfor an extended period of time. In another example, a light sourcehaving a reflector or otherwise configured to direct a beam of lightalong a particular path may be mounted proximate to the useridentification camera. The light source may be configured to direct itslight substantially within or along the first FOV of the useridentification camera. With this arrangement, the cameras becomeunobtrusive or unnoticeable to the user as they are now “lost in theglare” of the light sources.

A tracking camera may be located above the aisle. In someimplementations the tracking camera may be mounted to the central memberof the fixture. The tracking camera is configured to acquire images fromoverhead that may be able to track or determine a location of the userwithin the facility.

One or more light sources may also be positioned or affixed to thecentral member. For example, a plurality of light emitting diodes (LEDs)may be configured to provide area illumination of the aisle.

A plurality of fixtures may be arranged over an aisle to providecontemporaneously acquired images from multiple points of view of thesame location in the aisle. For example, an item sitting at an inventorylocation may be within the FOV of a first item identification cameramounted on a first fixture to the left of the inventory location as wellas the FOV of a second item identification camera mounted on a secondfixture to the right of the inventory location. Similarly, a user movingthrough the facility may have an image of their face acquired with afirst user identification camera while a second user identificationcamera on another fixture down the aisle may acquire an image of a backof their head.

As used herein, the facility may include, but is not limited to,warehouses, distribution centers, cross-docking facilities, orderfulfillment facilities, packaging facilities, shipping facilities,rental facilities, libraries, retail stores, wholesale stores, museums,or other facilities or combinations of facilities for performing one ormore functions of materials (inventory) handling. In otherimplementations, the techniques and fixtures described herein may beimplemented in other facilities or situations. For example, thetechniques and fixtures described may be used in theaters, stadiums, orother places that may employ a plurality of cameras.

By using the techniques and fixtures described herein, a plurality ofunobtrusive cameras may be mounted in the facility to provide image datawell suited for the particular needs of the inventory management system.These needs may include, but are not limited to, user identification,item identification, object tracking within the facility, and so forth.

Illustrative System

An implementation of a materials handling system 100 configured to storeand manage inventory items is illustrated in FIG. 1. A materialshandling facility 102 (facility) comprises one or more physicalstructures or areas within which one or more items 104(1), 104(2), . . ., 104(Q) may be held. As used in this disclosure, letters in parenthesissuch as “(Q)” indicate an integer value. The items 104 comprise physicalgoods, such as books, pharmaceuticals, repair parts, electronic gear,and so forth.

The facility 102 may include one or more areas designated for differentfunctions with regard to inventory handling. In this illustration, thefacility 102 includes a receiving area 106, a storage area 108, and atransition area 110.

The receiving area 106 may be configured to accept items 104, such asfrom suppliers, for intake into the facility 102. For example, thereceiving area 106 may include a loading dock at which trucks or otherfreight conveyances unload the items 104.

The storage area 108 is configured to store the items 104. The storagearea 108 may be arranged in various physical configurations. In oneimplementation, the storage area 108 may include one or more aisles 112.The aisle 112 may be configured with, or defined by, inventory locations114 on one or both sides of the aisle 112. The inventory locations 114may include one or more of shelves, racks, cases, cabinets, bins, floorlocations, or other suitable storage mechanisms for holding, supporting,or storing the items 104. The inventory locations 114 may be affixed tothe floor or another portion of the facility's 102 structure. Theinventory locations 114 may also be movable such that the arrangementsof aisles 112 may be reconfigurable. In some implementations, theinventory locations 114 may be configured to move independently of anoutside operator. For example, the inventory locations 114 may comprisea rack with a power source and a motor, operable by a computing deviceto allow the rack to move from one location within the facility 102 toanother.

One or more users 116 and totes 118 or other material handling apparatusmay move within the facility 102. For example, the user 116 may moveabout within the facility 102 to pick or place the items 104 in variousinventory locations 114, placing the items 104 on the tote 118 for easeof transport. In other implementations, other devices such as robots,forklifts, cranes, aerial drones, and so forth, may move about thefacility 102 picking, placing, or otherwise moving the items 104.

One or more sensors 120 may be configured to acquire information in thefacility 102. The sensors 120 may include, but are not limited to,cameras, three-dimensional (3D) sensors, weight sensors, radio frequency(RF) receivers, temperature sensors, humidity sensors, vibrationsensors, and so forth. The sensors 120 may be stationary or mobile,relative to the facility 102. For example, the inventory locations 114may contain cameras 120(1) configured to acquire images of picking orplacement of items 104 on shelves, of the users 116 in the facility 102,and so forth. In another example, the floor of the facility 102 mayinclude weight sensors configured to determine a weight of the user 116or other object thereupon. The sensors 120 are discussed in more detailbelow with regard to FIG. 2.

During operation of the facility 102, the sensors 120 may be configuredto provide information suitable for tracking the location of objectswithin the facility 102, their movement, and so forth. For example, aseries of images acquired by the camera 120(1) may indicate removal ofan item 104 from a particular inventory location 114 by the user 116 andplacement of the item 104 on or at least partially within the tote 118.The tote 118 is discussed in more detail below with regard to FIG. 4.

While the storage area 108 is depicted as having one or more aisles 112,inventory locations 114 storing the items 104, sensors 120, and soforth, it is understood that the receiving area 106, the transition area110, or other areas of the facility 102 may be similarly equipped.Furthermore, the arrangement of the various areas within the facility102 is depicted functionally rather than schematically. For example, insome implementations, multiple different receiving areas 106, storageareas 108, and transition areas 110 may be interspersed rather thansegregated.

The facility 102 may include, or be coupled to, an inventory managementsystem 122. The inventory management system 122 is configured tointeract with users 116 or devices such as sensors 120, robots, materialhandling equipment, computing devices, and so forth, in one or more ofthe receiving area 106, the storage area 108, or the transition area110. This interaction may be facilitated at least in part by sensor datareceived from the one or more sensors 120.

The cameras 120(1) have a field-of-view (FOV) 124. The FOV 124 is aportion of a scene of which an image may be acquired by the camera120(1). The size of the FOV 124 for a particular camera 120(1) may bebased at least in part on a focal length of the camera 120(1) and a sizeof the image sensor therein that is used to acquire the image. The FOV124 may be directed along a particular direction. For example, acenterline of the FOV 124 may extend along a center of an angledescribed by the FOV 124 and originating from a lens or image sensor.For example, the centerline of the FOV 124 may originate at a vertex ofa solid angle of the FOV 124 and extend to a center point of aprojection of the FOV 124 onto a scene. Continuing the example, wherethe projection of the FOV 124 is a rectangle, the center point of theprojection may comprise an intersection of lines extending from oppositecorners of the rectangle.

An object within the FOV 124 may be depicted in an image acquired by thecamera 120(1). Different cameras 120(1) within the facility 102 may havedifferent FOVs 124. The cameras 120(1) may acquire image data 126. Theimage data 126 comprises one or more images of the scene within the FOV124. For example, the image data 126 may comprise an image of an item104, an inventory location 114, a user 116, a tote 118, or anotherobject.

The inventory management system 122 may process the image data 126 tooperate the facility 102. For example, the image data 126 may beprocessed using one or more machine vision techniques to identify theitem 104, the inventory location 114, the user 116, the tote 118, oranother object depicted therein. Examples of these techniques aredescribed below with regard to FIG. 3. In another example, the inventorymanagement system 122 may process the image data 126 to determine alocation within the facility 102 of the object. For example, given apreviously determined location of the camera 120(1) within the facility102, based on the appearance of the user 116 within the FOV 124 of thecamera 120(1), the location of the user 116 may be determined.

The facility 102 may be configured to receive different kinds of items104 from various suppliers and to store them until a customer orders orretrieves one or more of the items 104. A general flow of items 104through the facility 102 is indicated by the arrows of FIG. 1.Specifically, as illustrated in this example, items 104 may be receivedfrom one or more suppliers, such as manufacturers, distributors,wholesalers, and so forth, at the receiving area 106. In variousimplementations, the items 104 may include merchandise, commodities,perishables, or any suitable type of item, depending on the nature ofthe enterprise that operates the facility 102.

Upon being received from a supplier at receiving area 106, the items 104may be prepared for storage in the storage area 108. For example, insome implementations, items 104 may be unpacked or otherwise rearranged.The inventory management system 122 may include one or more softwareapplications executing on a computer system to provide inventorymanagement functions. These inventory management functions may includemaintaining information indicative of the type, quantity, condition,cost, location, weight, or any other suitable parameters with respect tothe items 104. The items 104 may be stocked, managed, or dispensed interms of countable units, individual units, or multiple units, such aspackages, cartons, crates, pallets, or other suitable aggregations.Alternatively, some items 104, such as bulk products, commodities, andso forth, may be stored in continuous or arbitrarily divisible amountsthat may not be inherently organized into countable units. Such items104 may be managed in terms of measurable quantity such as units oflength, area, volume, weight, time, duration, or other dimensionalproperties characterized by units of measurement. Generally speaking, aquantity of an item 104 may refer to either a countable number ofindividual or aggregate units of an item 104 or a measurable amount ofan item 104, as appropriate.

After arriving through the receiving area 106, items 104 may be storedwithin the storage area 108. In some implementations, like items 104 maybe stored or displayed together in the inventory locations 114 such asin bins, on shelves, hanging from pegboards, and so forth. In thisimplementation, all items 104 of a given kind are stored in oneinventory location 114. In other implementations, like items 104 may bestored in different inventory locations 114. For example, to optimizeretrieval of certain items 104 having frequent turnover within a largephysical facility 102, those items 104 may be stored in severaldifferent inventory locations 114 to reduce congestion that might occurat a single inventory location 114.

When a customer order specifying one or more items 104 is received, oras a user 116 progresses through the facility 102, the correspondingitems 104 may be selected or “picked” from the inventory locations 114containing those items 104. In various implementations, item picking mayrange from manual to completely automated picking. For example, a user116 may have a list of items 104 they desire and may progress throughthe facility 102 picking items 104 from inventory locations 114 withinthe storage area 108 and placing those items 104 into a tote 118. Inother implementations, employees of the facility 102 may pick items 104using written or electronic pick lists derived from customer orders.These picked items 104 may be placed into the tote 118 as the employeeprogresses through the facility 102.

After items 104 have been picked, they may be processed at a transitionarea 110. The transition area 110 may be any designated area within thefacility 102 where items 104 are transitioned from one location toanother or from one entity to another. For example, the transition area110 may be a packing station within the facility 102. When the item 104arrives at the transition area 110, the item 104 may be transitionedfrom the storage area 108 to the packing station. Information about thetransition may be maintained by the inventory management system 122.

In another example, if the items 104 are departing the facility 102, alist of the items 104 may be obtained and used by the inventorymanagement system 122 to transition responsibility for, or custody of,the items 104 from the facility 102 to another entity. For example, acarrier may accept the items 104 for transport with that carrieraccepting responsibility for the items 104 indicated in the list. Inanother example, a user 116 may purchase or rent the items 104 andremove the items 104 from the facility 102.

During use of the facility 102, the user 116 may move about the facility102 to perform various tasks, such as picking or placing the items 104at the inventory locations 114. The user 116 may benefit frominformation or actions that are based on input from cameras 120(1). Forexample, images may be used to track a pick or place of an item 104using a plurality of cameras 120(1). By tracking the item 104, theinventory management system 122 may be able to maintain informationabout inventory levels, maintain information about the items 104 pickedby the user 116, and so forth.

The inventory management system 122 may access or generate sensor data(not shown) about the facility 102 and the contents therein includingthe items 104, the users 116, the totes 118, and so forth. The sensordata may be acquired by one or more of the sensors 120, data provided byother systems, and so forth. For example, the sensors 120 may includecameras 120(1) configured to acquire image data 126 of scenes in thefacility 102. The image data 126 may be processed by the inventorymanagement system 122 to determine a location of the user 116, the tote118, identity of the user 116, identity of the item 104 handled by theuser 116, quantity of item 104 picked or placed, and so forth. Thesensors 120 are discussed in more detail below with regard to FIG. 2.

Placement of the cameras 120(1) within the facility 102 may bedetermined based on a variety of factors. The factors may includecharacteristics of the camera 120(1), how the image data 126 will beused, height of the users 116 or other objects within the facility 102,and so forth.

A fixture or apparatus 128 is depicted over the aisle 112. The fixture128 may be suspended overhead from the ceiling, supported by one or moreinventory locations 114, may be held aloft by a floor stand, and soforth. Mounted to the fixture 128 may be one or more cameras 120(1). Thecameras 120(1) and their arrangement on the fixture 128 and with respectto the aisle 112 are discussed in more detail below with regard to FIGS.5-8.

The fixture 128 may include one or more light sources 130 configured toproduce light. The light sources 130 may include, but are not limitedto, incandescent bulbs, light emitting diodes (LEDs), electroluminescentdevices, quantum dots, fluorescent bulbs, and so forth. In someimplementations, the light sources 130 may comprise one or morelight-directing apparatus, such as optical waveguides, fiber optics, andso forth. For example, the light sources 130 may receive light from anexternal resource such as a solar collector, and the light sources 130may be configured to emit at least a portion of the received lightwithin the facility 102.

By mounting one or more cameras 120(1) on the fixture 128, the one ormore cameras 120(1) may be configured to provide FOV 124 and image data126 suitable for use in the inventory management system 122. Theoverhead vantage point afforded by mounting the one or more cameras120(1) to the fixture 128 may minimize obscuration of an object ofinterest from the camera 120(1). For example, given the positioning ofthe user identification cameras and the angle of their FOV 124 down theaisle 112, the head of one user 116 may be less likely to obscure thehead of another user 116 within the field of view. Similarly, thepositioning of the item identification cameras that are looking at aninventory location across the aisle 112 and to one side minimizesobscuration of the inventory location 114 and the items 104 therein bythe body of a user 116 standing in front of that inventory location.

Mounting of the light sources 130 proximate to the cameras 120(1) mayalso improve the quality of images acquired by the cameras 120(1). Forexample, placement of the light sources 130 adjacent to or around thecamera 120(1) may result in more even illumination of an object withinthe FOV 124 of that camera 120(1).

Additionally, mounting of one or more cameras 120(1) on the fixture 128may render the one or more cameras 120(1) less obtrusive or noticeableto the users 116 of the facility 102. For example, the light emitted bythe light sources 130 may be sufficiently brilliant to discourage theuser 116 from looking at the cameras 120(1). By rendering the cameras120(1) less obtrusive, and further by keeping them out of reach of theusers 116, tampering or damage to the cameras 120(1) may be reduced.

Furthermore, by mounting at least a portion of the one or more cameras120(1) used in the facility 102 to the fixture 128, large numbers ofcameras 120(1) may be readily deployed. Once deployed, these cameras120(1) may provide image data 126 of use to the inventory managementsystem 122 during operation of the facility 102.

FIG. 2 is a block diagram 200 illustrating additional details of thefacility 102, according to some implementations. The facility 102 may beconnected to one or more networks 202, which in turn connect to one ormore servers 204. The network 202 may include private networks, publicnetworks such as the Internet, or a combination thereof. The network 202may utilize wired technologies (e.g., wires, fiber optic cable, and soforth), wireless technologies (e.g., radio frequency, infrared,acoustic, optical, and so forth), or other connection technologies. Thenetwork 202 is representative of any type of communication network,including one or more of data networks or voice networks. The network202 may be implemented using wired infrastructure (e.g., copper cable,fiber optic cable, and so forth), a wireless infrastructure (e.g.,cellular, microwave, satellite, and so forth), or other connectiontechnologies.

The servers 204 may be configured to execute one or more modules orsoftware applications associated with the inventory management system122. While the servers 204 are illustrated as being in a locationoutside of the facility 102, in other implementations, at least aportion of the servers 204 may be located at the facility 102. Theservers 204 are discussed in more detail below with regard to FIG. 3.

The users 116, the totes 118, or other objects in the facility 102 maybe equipped with one or more tags 206. The tags 206 may be configured toemit a signal 208. In one implementation, the tag 206 may be a radiofrequency identification (RFID) tag 206 configured to emit an RF signal208 upon activation by an external signal. For example, the externalsignal may comprise a radio frequency signal or a magnetic fieldconfigured to energize or activate the RFID tag 206. In anotherimplementation, the tag 206 may comprise a transmitter and a powersource configured to power the transmitter. For example, the tag 206 maycomprise a Bluetooth Low Energy (BLE) transmitter and battery. In otherimplementations, the tag 206 may use other techniques to indicatepresence of the tag 206. For example, an acoustic tag 206 may beconfigured to generate an ultrasonic signal that is detected bycorresponding acoustic receivers. In yet another implementation, the tag206 may be configured to emit an optical signal 208.

The inventory management system 122 may be configured to use the tags206 for one or more of identification of the object, determining alocation of the object, and so forth. For example, the users 116 maywear tags 206, the totes 118 may have tags 206 affixed, and so forth,which may be read and, based at least in part on signal strength, usedto determine identity and location of the object. The tote 118 isconfigured to carry or otherwise transport one or more items 104. Forexample, the tote 118 may include a basket, a cart, a bag, and so forth.The tote 118 is discussed in more detail below with regard to FIG. 4.

Generally, the inventory management system 122 or other systemsassociated with the facility 102 may include any number and combinationof input components, output components, and servers 204.

The one or more sensors 120 may be arranged at one or more locationswithin the facility 102. For example, the sensors 120 may be mounted onor within a floor, wall, at a ceiling, at an inventory location 114, onthe tote 118, may be carried or worn by the user 116, and so forth.

The sensors 120 may include one or more cameras 120(1). These cameras120(1) may include imaging sensors configured to acquire images of ascene. The imaging sensors are configured to detect light in one or morewavelengths including, but not limited to, terahertz, infrared, visible,ultraviolet, and so forth. The imaging sensors may comprise chargecoupled devices (CCD), complementary metal oxide semiconductor (CMOS)devices, microbolometers, and so forth. The inventory management system122 may use image data 126 acquired by the cameras 120(1) duringoperation of the facility 102. For example, the inventory managementsystem 122 may identify items 104, users 116, totes 118, and so forth,based at least in part on their appearance within the image data 126acquired by the cameras 120(1). The cameras 120(1) may be mounted invarious locations within the facility 102. For example, cameras 120(1)may be mounted overhead such as on the fixtures 128, on inventorylocations 114, may be worn or carried by users 116, may be affixed tototes 118, and so forth.

One or more 3D sensors 120(2) may also be included in the sensors 120.The 3D sensors 120(2) are configured to acquire spatial or 3D data, suchas depth information, about objects within a field-of-view of thissensor. The 3D sensors 120(2) include range cameras, lidar systems,sonar systems, radar systems, structured light systems, stereo visionsystems, optical interferometry systems, and so forth. The lidar systemmay include a laser, a detector suitable for the light generated by thelaser, and an optical scanning assembly. The optical scanning assemblymay be configured to direct a beam of light from the laser to aplurality of points in 3D real space, and direct laser light asreflected or fluoresced by an object at the plurality of points back tothe detector. The lidar system or other 3D sensors 120(2) may beconfigured to generate a set of coordinates in 3D real space of objectsin the facility 102. The inventory management system 122 may use the 3Ddata acquired to identify objects, determine a location of an object in3D real space, and so forth.

One or more buttons 120(3) are configured to accept input from the user116. The buttons 120(3) may comprise mechanical, capacitive, optical, orother mechanisms. For example, the buttons 120(3) may comprisemechanical switches configured to accept an applied force from a touchof the user 116 to generate an input signal. The inventory managementsystem 122 may use data from the buttons 120(3) to receive informationfrom the user 116. For example, the tote 118 may be configured with abutton 120(3) to accept input from the user 116 and send informationindicative of the input to the inventory management system 122.

The sensors 120 may include one or more touch sensors 120(4). The touchsensors 120(4) may use resistive, capacitive, surface capacitance,projected capacitance, mutual capacitance, optical, InterpolatingForce-Sensitive Resistance (IFSR), or other mechanisms to determine theposition of a touch or near-touch. For example, the IFSR may comprise amaterial configured to change electrical resistance responsive to anapplied force. The location within the material of that change inelectrical resistance may indicate the position of the touch. Theinventory management system 122 may use data from the touch sensors120(4) to receive information from the user 116. For example, the touchsensor 120(4) may be integrated with the tote 118 to provide atouchscreen with which the user 116 may select from a menu one or moreparticular items 104 for picking.

One or more microphones 120(5) may be configured to acquire informationindicative of sound present in the environment. In some implementations,arrays of microphones 120(5) may be used. These arrays may implementbeamforming techniques to provide for directionality of gain. Theinventory management system 122 may use the one or more microphones120(5) to acquire information from acoustic tags 206, accept voice inputfrom the users 116, determine the location of one or more users 116 inthe facility 102, determine ambient noise level, and so forth.

One or more weight sensors 120(6) are configured to measure the weightof a load, such as the item 104, the user 116, the tote 118, and soforth. The weight sensors 120(6) may be configured to measure the weightof the load at one or more of the inventory locations 114, the tote 118,or on the floor of the facility 102. The weight sensors 120(6) mayinclude one or more sensing mechanisms to determine the weight of aload. These sensing mechanisms may include piezoresistive devices,piezoelectric devices, capacitive devices, electromagnetic devices,optical devices, potentiometric devices, microelectromechanical devices,and so forth. The sensing mechanisms of weight sensors 120(6) mayoperate as transducers that generate one or more signals based on anapplied force, such as that of the load due to gravity. The inventorymanagement system 122 may use the data acquired by the weight sensors120(6) to identify an object, determine a location of an object,maintain shipping records, identify the user 116, and so forth.

The sensors 120 may include one or more light sensors 120(7). The lightsensors 120(7) may be configured to provide information associated withambient lighting conditions such as a level of illumination. Forexample, the intensity of illumination from the light sources 130 may beadjusted responsive to the level of lighting present in the facility102.

One more radio frequency identification (RFID) readers 120(8), nearfield communication (NFC) systems, and so forth, may also be included assensors 120. For example, the RFID readers 120(8) may be configured toread the RF tags 206. Information acquired by the RFID reader 120(8) maybe used by the inventory management system 122 to identify an objectassociated with the RF tag 206 such as the item 104, the user 116, thetote 118, and so forth. For example, based on information from the RFIDreaders 120(8) detecting the RF tag 206 at different times and differentRFID readers 120(8) having locations in the facility 102, a velocity ofthe RF tag 206 may be determined.

One or more RF receivers 120(9) may also be included as sensors 120. Insome implementations, the RF receivers 120(9) may be part of transceiverassemblies. The RF receivers 120(9) may be configured to acquire RFsignals 208 associated with Wi-Fi, Bluetooth, ZigBee, 3G, 4G, LTE, orother wireless data transmission technologies. The RF receivers 120(9)may provide information associated with data transmitted via radiofrequencies, signal strength of RF signals 208, and so forth. Forexample, information from the RF receivers 120(9) may be used by theinventory management system 122 to determine a location of an RF source,such as a communication interface onboard the tote 118 or carried by theuser 116.

The sensors 120 may include one or more accelerometers 120(10), whichmay be worn or carried by the user 116, mounted to the tote 118, and soforth. The accelerometers 120(10) may provide information such as thedirection and magnitude of an imposed acceleration. Data such as rate ofacceleration, determination of changes in direction, speed, and soforth, may be determined using the accelerometers 120(10).

A gyroscope 120(11) provides information indicative of rotation of anobject affixed thereto. For example, the tote 118 or other objects maybe equipped with a gyroscope 120(11) to provide data indicative of achange in orientation.

A magnetometer 120(12) may be used to determine an orientation bymeasuring ambient magnetic fields, such as the terrestrial magneticfield. The magnetometer 120(12) may be worn or carried by the user 116,mounted to the tote 118, and so forth. For example, the magnetometer120(12) mounted to the tote 118 may act as a compass and provideinformation indicative of which direction the tote 118 is oriented.

The sensors 120 may include other sensors 120(S) as well. For example,the other sensors 120(S) may include proximity sensors, ultrasonicrangefinders, thermometers, barometric sensors, hygrometers, orbiometric input devices including, but not limited to, fingerprintreaders or palm scanners. For example, the inventory management system122 may use information acquired from thermometers and hygrometers inthe facility 102 to direct the user 116 to check on delicate items 104stored in a particular inventory location 114 that is overheating, toodry, too damp, and so forth.

In some implementations, the camera 120(1) or other sensors 120 mayinclude hardware processors, memory, and other elements configured toperform various functions. For example, the cameras 120(1) may beconfigured to generate image data 126, send the image data 126 toanother device such as the server 204, and so forth.

The facility 102 may include one or more access points 210 configured toestablish one or more wireless networks. The access points 210 may useWi-Fi, NFC, Bluetooth, or other technologies to establish wirelesscommunications between a device and the network 202. The wirelessnetworks may allow the devices to communicate with one or more of thesensors 120, the inventory management system 122, the tags 206, the tote118, or other devices.

Output devices 212 may also be provided in the facility 102. The outputdevices 212 are configured to generate signals that may be perceived bythe user 116 or are detectable by the sensors 120. In someimplementations, the output devices 212 may be used to presentinformation to the users 116.

Haptic output devices 212(1) are configured to provide a signal thatresults in a tactile sensation to the user 116. The haptic outputdevices 212(1) may use one or more mechanisms such as electricalstimulation or mechanical displacement to provide the signal. Forexample, the haptic output devices 212(1) may be configured to generatea modulated electrical signal, which produces an apparent tactilesensation in one or more fingers of the user 116. In another example,the haptic output devices 212(1) may comprise piezoelectric or rotarymotor devices configured to provide a vibration that may be felt by theuser 116.

One or more audio output devices 212(2) are configured to provideacoustic output. The acoustic output includes one or more of infrasonicsound, audible sound, or ultrasonic sound. The audio output devices212(2) may use one or more mechanisms to generate the acoustic output.These mechanisms may include, but are not limited to, the following:voice coils, piezoelectric elements, magnetostrictive elements,electrostatic elements, and so forth. For example, a piezoelectricbuzzer or a speaker may be used to provide acoustic output.

The display devices 212(3) may be configured to provide output that maybe seen by the user 116 or detected by a light-sensitive detector suchas a camera 120(1) or light sensor 120(7). In some implementations, thedisplay devices 212(3) may be configured to produce output in one ormore of infrared, visible, or ultraviolet light. The output may bemonochrome or color. The display devices 212(3) may be emissive,reflective, or both. An emissive display device 212(3), such as usingLEDs, is configured to emit light during operation. In comparison, areflective display device 212(3), such as using an electrophoreticelement, relies on ambient light to present an image. Backlights orfront lights may be used to illuminate non-emissive display devices212(3) to provide visibility of the output in conditions where theambient light levels are low.

The display mechanisms of the display device 212(3) may include, but arenot limited to, micro-electromechanical systems (MEMS), spatial lightmodulators, electroluminescent displays, quantum dot displays, liquidcrystal on silicon (LCOS) displays, cholesteric displays,interferometric displays, liquid crystal displays, electrophoreticdisplays, and so forth. These mechanisms are configured to emit light,modulate incident light emitted from another source, or both. Thedisplay devices 212(3) may operate as panels, projectors, and so forth.

The display devices 212(3) may be configured to present images. Forexample, the display devices 212(3) may comprise an addressable display212(3)(1). The addressable display 212(3)(1) comprises elements that maybe independently addressable to produce output, such as pixels. Forexample, the addressable display 212(3)(1) may produce an image using atwo-dimensional array of pixels.

In some implementations, the display devices 212(3) may be configured toprovide non-image data, such as text characters, colors, and so forth.For example, an addressable display 212(3)(1) may comprise a segmentedelectrophoretic display device 212(3), segmented LED, and so forth,which may be used to present information such as a SKU number, and soforth. The display devices 212(3) may also be configurable to vary thecolor of the segment, such as using multi-color/multi-wavelength LEDsegments.

The display devices 212(3) may include image projectors 212(3)(2). Forexample, the image projector 212(3)(2) may be configured to project animage onto objects. The image may be generated using MEMS, LCOS, lasers,and so forth. In some implementations, a timestamp projector (not shown)may comprise one or more hardware processors, memory such ascomputer-readable storage media, one or more communication interfaces,and one or more image projectors 212(3)(2).

The display devices 212(3) may include a light array 212(3)(3). Thelight array 212(3)(3) may comprise a plurality of emissive elementsconfigurable to emit light. For example, the light array 212(3)(3) maycomprise a plurality of LEDs.

The display devices 212(3) may be located at various points within thefacility 102. For example, the addressable displays 212(3)(1) or thelight arrays 212(3)(3) may be located on inventory locations 114, totes118, in or on the floor of the facility 102, and so forth. The imageprojectors 212(3)(2) may be configured to project images on the floor,inventory locations 114, walls, users 116, totes 118, and so forth.

Other output devices 212(T) may also be present. For example, the otheroutput devices 212(T) may include scent/odor dispensers, documentprinters, 3D printers or fabrication equipment, and so forth.

As described above, the facility 102 may include one or more fixtures128. One or more sensors 120 such as cameras 120(1), 3D sensors 120(2),microphones 120(5), RFID readers 120(8), RF receivers 120(9), and soforth, may be mounted to the fixtures 128. In some implementations, oneor more output devices 212 may be mounted to the fixtures 128. Forexample, an audio output device 212(2), an image projector 212(3)(2),and so forth, may be mounted to the fixture 128. For example, the audiooutput device 212(2) may be mounted on the central member, one of thearms, and so forth.

FIG. 3 illustrates a block diagram 300 of a server 204 configured tosupport operation of the facility 102, according to someimplementations. The server 204 may be physically present at thefacility 102, may be accessible by the network 202, or a combination ofboth. The server 204 does not require end-user knowledge of the physicallocation and configuration of the system that delivers the services.Common expressions associated with the server 204 may include “on-demandcomputing”, “software as a service (SaaS)”, “platform computing”,“network-accessible platform”, “cloud services”, “data centers”, and soforth. Services provided by the server 204 may be distributed across oneor more physical or virtual devices.

One or more power supplies 302 are configured to provide electricalpower suitable for operating the components in the server 204. Theserver 204 may include one or more hardware processors 304 (processors)configured to execute one or more stored instructions. The processors304 may comprise one or more cores. One or more clocks 306 may provideinformation indicative of date, time, ticks, and so forth. For example,the processor 304 may use data from the clock 306 to generatetimestamps, trigger a preprogrammed action, and so forth.

The server 204 may include one or more communication interfaces 308,such as input/output (I/O) interfaces 310, network interfaces 312, andso forth. The communication interfaces 308 enable the server 204, orcomponents thereof, to communicate with other devices or components. Thecommunication interfaces 308 may include one or more I/O interfaces 310.The I/O interfaces 310 may comprise Inter-Integrated Circuit (I2C),Serial Peripheral Interface (SPI), Universal Serial Bus (USB) aspromulgated by the USB Implementers Forum, RS-232, and so forth.

The I/O interface(s) 310 may couple to one or more I/O devices 314. TheI/O devices 314 may include input devices such as one or more of asensor 120, keyboard, mouse, scanner, and so forth. The I/O devices 314may also include output devices 212 such as one or more of a displaydevice 212(3), printer, audio speakers, and so forth. In someembodiments, the I/O devices 314 may be physically incorporated with theserver 204 or may be externally placed.

The network interfaces 312 are configured to provide communicationsbetween the server 204 and other devices, such as the totes 118,routers, access points 210, and so forth. The network interfaces 312 mayinclude devices configured to couple to personal area networks (PANs),local area networks (LANs), wide area networks (WANs), and so forth. Forexample, the network interfaces 312 may include devices compatible withEthernet, Wi-Fi, Bluetooth, ZigBee, and so forth.

The server 204 may also include one or more buses or other internalcommunications hardware or software that allow for the transfer of databetween the various modules and components of the server 204.

As shown in FIG. 3, the server 204 includes one or more memories 316.The memory 316 comprises one or more computer-readable storage media(CRSM). The CRSM may be any one or more of an electronic storage medium,a magnetic storage medium, an optical storage medium, a quantum storagemedium, a mechanical computer storage medium, and so forth. The memory316 provides storage of computer-readable instructions, data structures,program modules, and other data for the operation of the server 204. Afew example functional modules are shown stored in the memory 316,although the same functionality may alternatively be implemented inhardware, firmware, or as a system on a chip (SOC).

The memory 316 may include at least one operating system (OS) module318. The OS module 318 is configured to manage hardware resource devicessuch as the I/O interfaces 310, the I/O devices 314, the communicationinterfaces 308, and provide various services to applications or modulesexecuting on the processors 304. The OS module 318 may implement avariant of the FreeBSD operating system as promulgated by the FreeBSDProject; other UNIX or UNIX-like variants; a variation of the Linuxoperating system as promulgated by Linus Torvalds; the Windows operatingsystem from Microsoft Corporation of Redmond, Wash., USA; and so forth.

Also stored in the memory 316 may be a data store 320 and one or more ofthe following modules. These modules may be executed as foregroundapplications, background tasks, daemons, and so forth. The data store320 may use a flat file, database, linked list, tree, executable code,script, or other data structure to store information. In someimplementations, the data store 320 or a portion of the data store 320may be distributed across one or more other devices including theservers 204, network attached storage devices, and so forth.

A communication module 322 may be configured to establish communicationswith one or more of the totes 118, the sensors 120, the display devices212(3), other servers 204, or other devices. The communications may beauthenticated, encrypted, and so forth.

The memory 316 may store an inventory management module 324. Theinventory management module 324 is configured to provide the inventoryfunctions as described herein with regard to the inventory managementsystem 122. For example, the inventory management module 324 may trackitems 104 between different inventory locations 114, to and from thetotes 118, and so forth.

The inventory management module 324 may include one or more of a dataacquisition module 326 or an image analysis module 328. The dataacquisition module 326 may be configured to acquire and accessinformation associated with operation of the facility 102. Thisinformation may be stored in the data store 320. The inventorymanagement module 324 may be configured to track objects in the facility102 using physical layout data 330 and sensor data 332 which may bestored in the data store 320.

The physical layout data 330 comprises information about the physicalconfiguration of the facility 102 or portions thereof. For example, thephysical layout data 330 may include electronic representations of thephysical structures in the facility 102, such as computer aided design(CAD) data of the aisle 112 configurations, inventory locations 114,information about which items 104 are in what inventory locations 114,real coordinates of cameras 120(1) mounted to fixtures 128, and soforth. The physical layout data 330 may include information about thepresence of walls; heating, ventilation, and air conditioning (HVAC)equipment; location of doors and windows, and so forth.

The sensor data 332 comprises information acquired from, or based on,the one or more sensors 120. For example, the sensor data 332 maycomprise 3D information about an object in the facility 102 as acquiredby the 3D sensors 120(2) or weight data as acquired by the weightsensors 120(6).

As described above, the sensors 120 may include cameras 120(1)configured to acquire image data 126 that is stored in the data store320. The image data 126 may comprise one or more images 334. The images334 may include individual, still images or a sequence of images 334such as video. The image 334 may comprise a plurality of pixels. Theimage data 126 may also comprise metadata, such as a camera identifier336, image timestamp 338, and so forth.

The camera identifier 336 provides information indicative of aparticular camera 120(1) that acquired the image 334. The cameraidentifier 336 may comprise a string, value, or other data that uniquelyidentifies the particular camera 120(1) from other cameras 120(1) withinat least a single facility 102. In some implementations, the cameraidentifier 336 may be unique across all facilities 102. The cameraidentifier 336 may comprise a media access control (MAC) address, suchas of a network interface used by the camera 120(1) to communicate withthe network 202. By using the camera identifier 336, the dataacquisition module 326, image analysis module 328, or other modules areable to determine information such as the location within the facility102 that corresponds to the image 334.

The image timestamp 338 comprises time information indicative ofacquisition of the image 334. The image timestamp 338 may be generatedusing time data from an internal clock of the camera 120(1). The imagetimestamp 338 comprises data extrinsic to the image 334, such asmetadata or file header information. In some implementations, the imagetimestamp 338 may be superimposed into or provided in place of at leasta portion of the image 334. For example, the image timestamp 338 maycomprise date and time information as obtained from the clock of thecamera 120(1) and presented as a visible caption in the image data 126.

The image data 126 may include other information. For example, where thecamera 120(1) includes a mechanism to change the orientation, such as apan/tilt head, the orientation of the camera 120(1) at the time ofacquisition of the image 334 may be included in the image data 126. Insome implementations, the image data 334 may include the camera locationin real coordinates.

The image analysis module 328 is configured to process at least aportion of the image data 126. The image analysis module 328 maygenerate one or more of identification data 340 or tracking data 342 andmay store this data in the data store 320. The identification data 340may identify a particular user 116, particular item 104, tote 118, orother object. For example, the identification data 340 may comprise anaccount name, a real name, a temporary identifier issued to a previouslyunregistered user 116, and so forth. The tracking data 342 providesinformation as to the location of an object within the facility 102. Forexample, the tracking data 342 may comprise data indicative of the user116 being in aisle 112(13) in front of the inventory location 114(37).

The image analysis module 328 may be configured to use one or moremachine vision techniques to identify an object in an image 334, aposition of the object in the image 334, and so forth. The objects mayinclude, but are not limited to the items 104, users 116, totes 118, andso forth.

In some implementations, the image data 126 may be used to identify theuser 116 by using one or more facial recognition techniques. Forexample, facial characteristics of the user 116 may be determined thatcomprise a set of eigenvectors generated by using principal componentanalysis (PCA) on the image 334 of the user 116. These eigenvectors, asdescriptive of a human face, may be known as “eigenfaces” or“eigenimages”. In one implementation, identification may be performed atleast in part by using one or more tools available in the OpenCV libraryas developed by Intel Corporation of Santa Clara, Calif., USA; WillowGarage of Menlo Park, Calif., USA; and Itseez of Nizhny Novgorod,Russia, with information available at www.opencv.org. The identificationprocess may include comparing eigenvectors of the images 334 with thosepreviously stored as facial characteristics to determine identity of theuser 116. For example, the face of the user 116 may be identified usingthe “FaceRecognizer” class of the OpenCV library. The results may thenbe stored as the identification data 340 in the data store 320.

In other implementations, other libraries or techniques may be used. Forexample, the OKAO machine vision library as promulgated by OmronCorporation of Kyoto, Japan, may be used to recognize faces or otherobjects.

In some implementations, the identity of the user 116 or another objectmay be definitive, such as associating the user 116 with a particularuser account or real name. In other implementations, the identity of theuser 116 may be temporary or used to distinguish an otherwise anonymoususer 116 from other users 116 of the facility 102.

The image analysis module 328 may use other techniques such as activeappearance models (AAM), active shape models (ASM), Haar detectors,local binary pattern (LBP) classifiers, and so forth, to process theimage data 126. In some implementations, an artificial neural network(ANN) may be used to identify an object present in an image 334. The ANNmay be trained using a supervised learning algorithm such thatparticular objects are associated with particular training imagesprovided to the ANN. Once trained, the ANN may be provided with theimage 334 and may provide as output an identity of the object in theimage 334.

The image analysis module 328 may provide the best output given images334 in which the object depicted is oriented or posed a certain way. Forexample, facial recognition is likely to be most successful and accuratewhen the image 334 acquired by the camera 120(1) is of the full face ofthe user 116, squarely facing the camera 120(1). A verticalsuperior-inferior axis extending vertically through the user 116 fromtheir head through their feet may be used for illustrative purposes.Perpendicular to the superior-inferior access may be a transverse line.For example, where the user 116 is standing upright and looking straightahead with their gaze horizontal relative to the floor, their gaze isalong a transverse line. Some facial recognition systems may operatebest when the image 334 of the face of the user 116 is obtained from acamera 120(1) at an angle of 20° or less above or below the transverseline. At a greater angle, the facial features in the image 334 may betoo distorted for reliable identification. By mounting at least aportion of the cameras 120(1) on the fixtures 128 as described below inFIGS. 5-8, images 334 of the user 116 may be acquired that satisfy theseangular constraints.

For other objects, such as items 104, different angles may be suitablefor acquisition of images 334. For example, the best results from theimage analysis module 328 may be obtained when the images 334 of items104 having labeling or other indicia on an upper surface are acquiredfrom an overhead vantage point, looking down upon the item 104.

The inventory management module 324 may generate control data 344. Thecontrol data 344, stored in the data store 320, may comprise one or moreinstructions or commands configured to operate one or more of thecameras 120(1) or other devices. For example, the control data 344 mayspecify a particular frame rate, exposure settings, time or interval atwhich image data 126 is to be acquired, and so forth.

In some implementations, one or more of the functions associated withthe data acquisition module 326 or the image analysis module 328 may beimplemented by the camera 120(1). For example, a processor of the camera120(1) may be configured to process the images 334 to recognize a faceappearing in the image 334, and the processor of the camera 120(1) mayprovide image data 126 comprising a cropped version of the face.

Other modules 346 may also be present in the memory 316, as well asother data 348 in the data store 320. For example, the other modules 346may include a lighting control module. The lighting control module maybe configured to control operation of the light sources 130. The otherdata 348 may comprise information such as preset illumination levels ofthe light sources 130 to be implemented by the lighting control module.

FIG. 4 is a block diagram 400 of the tote 118, according to someimplementations. The tote 118 may include several form factors such as awheeled cart, hand-carried cart, bag, and so forth. For example, thetote 118 may include a plurality of wheels enabling the tote 118 to bemoved within the facility 102.

The tote 118 may include a tag 206. The tag 206 may be affixed to,integral with, or otherwise associated with the tote 118. In someimplementations, the tote 118 may have identifiers, tags 206, or otherindicia thereupon. For example, a machine-readable optical code, such asa barcode, may be affixed to a side of the tote 118. The one or morecameras 120(1) supported by the fixtures 128 may acquire images 334 ofthe tote 118 and may use the machine-readable optical code to identifythe particular tote 118.

The tote 118 may comprise a structure 402. The structure 402 may includecomponents comprising one or more of metal, plastic, compositematerials, ceramic, wood, and so forth. For example, the structure 402may comprise a carbon-fiber frame. One or more inventory locations 114may be integral with, or attached to, the structure 402. For example,the structure 402 may comprise a frame with wheels while the inventorylocation 114 comprises a basket to hold one or more items 104 duringuse.

The tote 118 may include a power supply 404. The power supply 404 isconfigured to provide electrical power suitable for operating thecomponents in the tote 118 or coupled thereto. For example, the powersupply 404 may comprise batteries, capacitors, fuel cells, photovoltaiccells, wireless power receivers, conductive couplings suitable forattachment to an external power source, and so forth.

The tote 118 may include one or more hardware processors 406(processors) configured to execute one or more stored instructions. Theprocessors 406 may comprise one or more cores. One or more clocks 408may provide information indicative of date, time, ticks, and so forth.For example, the processor 406 may use data from the clock 408 togenerate a timestamp, trigger a preprogrammed action, and so forth.

In some implementations, the tote 118 may include one or more motors 410or other motive devices. The motor 410 may be configured to move orassist the user 116 in moving the tote 118 from one location to anotherwithin the facility 102. For example, in one implementation, the tote118 may comprise a wheeled vehicle able to move within the facility 102,such as from one aisle 112 to another aisle 112.

The tote 118 may include one or more communication interfaces 412 suchas I/O interfaces 414, network interfaces 416, and so forth. Thecommunication interfaces 412 enable the tote 118, or components thereof,to communicate with other devices or components. The communicationinterfaces 412 may include one or more I/O interfaces 414. The I/Ointerfaces 414 may comprise I2C, SPI, USB, RS-232, and so forth.

The I/O interface(s) 414 may couple to one or more I/O devices 418. TheI/O devices 418 may include one or more of the input devices such as thesensors 120. As described above, the sensors 120 may include cameras120(1), buttons 120(3), touch sensors 120(4), accelerometers 120(10),gyroscopes 120(11), magnetometers 120(12), and so forth.

The I/O devices 418 may include the output devices 212 such as thehaptic output devices 212(1), audio output devices 212(2), displaydevices 212(3), and so forth. For example, the tote 118 may comprise adisplay device 212(3) configured to present a graphical user interface(GUI) to the user 116. In some embodiments, the I/O devices 418 may bephysically incorporated with the tote 118 or may be externally placed.

The network interfaces 416 are configured to provide communicationsbetween the tote 118 and other devices, such as other totes 118,routers, access points 210, the servers 204, and so forth. The networkinterfaces 416 may include devices configured to couple to PANs, LANs,WANs, and so forth. For example, the network interfaces 416 may includedevices compatible with Ethernet, Wi-Fi, Bluetooth, ZigBee, LTE, and soforth.

The tote 118 may also include one or more buses or other internalcommunications hardware or software that allow for the transfer of databetween the various modules and components of the tote 118.

As shown in FIG. 4, the tote 118 includes one or more memories 420. Thememory 420 comprises one or more CRSM as described above with regard tomemory 316 on server 204. The memory 420 provides storage ofcomputer-readable instructions, data structures, program modules, andother data for the operation of the tote 118. A few example functionalmodules are shown stored in the memory 420, although the samefunctionality may alternatively be implemented in hardware, firmware, oras a SOC.

The memory 420 may include at least one OS module 422. The OS module 422is configured to manage hardware resource devices such as the I/Ointerfaces 414, the I/O devices 418, the communication interfaces 412,and provide various services to applications or modules executing on theprocessors 406. The OS module 422 may implement a variant of the FreeBSDoperating system as promulgated by the FreeBSD Project; other UNIX orUNIX-like variants; a variation of the Linux operating system, such asAndroid as promulgated by Google, Inc. of Mountain View, Calif., USA;and other OS modules 422. Other OS modules 422 may be used, such as theWindows operating system from Microsoft Corporation of Redmond, Wash.,USA; the LynxOS from LynuxWorks of San Jose, Calif., USA; and so forth.

One or more of the following modules may also be stored in the memory420. These modules may be executed as foreground applications,background tasks, daemons, and so forth. The data store 424 may use aflat file, database, linked list, tree, executable code, script, orother data structure to store information. In some implementations, thedata store 424 or a portion of the data store 424 may be distributedacross one or more other devices including the servers 204, networkattached storage devices, and so forth.

A communication module 426 may be configured to establish communicationswith one or more of the sensors 120, the servers 204, or other devices.The communications may be authenticated, encrypted, and so forth.

The memory 420 may also store a tote item tracking module 428. The toteitem tracking module 428 is configured to maintain a tote itemidentifier list 430. The tote item identifier list 430 may comprise dataindicating one or more items 104 associated with the tote 118. Forexample, the tote item identifier list 430 may indicate the items 104present in the tote 118. The tote item tracking module 428 may generateor otherwise maintain a tote item identifier list 430. For example, thetote item tracking module 428 may receive input from a user 116 by wayof a touch screen display with which the user 116 may enter informationindicative of the item 104 placed in the tote 118. In another example,the tote item tracking module 428 may receive input from one or more I/Odevices 418, such as the weight sensor 120(6), an RFID reader 120(8),and so forth. The tote item tracking module 428 may send the list ofitems 104 to the inventory management system 122. The tote item trackingmodule 428 may also be configured to receive information from theinventory management system 122. For example, a list of items 104 to bepicked may be presented within a user interface on the display device212(3) of the tote 118.

A unique identifier 432 may also be stored in the memory 420. In someimplementations, the unique identifier 432 may be stored in rewritablememory, write-once-read-only memory, and so forth. For example, theunique identifier 432 may be burned into a one-time programmable,non-volatile memory, such as a programmable read-only memory (PROM). Insome implementations, the unique identifier 432 may be part of acommunication interface 412. For example, the unique identifier 432 maycomprise a MAC address associated with a Bluetooth interface. Thecommunication module 426, the tote item tracking module 428, or othermodules may use the unique identifier 432 when communicating with otherdevices such as the server 204. For example, the unique identifier 432may be used to identify data sent by the tote 118.

The memory 420 may include a display module 434. The display module 434may be configured to present information, such as information receivedfrom the one or more servers 204 or generated on-board the tote 118. Forexample, the display module 434 may comprise a markup language renderingengine configured to process user interface data received from theserver 204 to generate a user interface. In some implementations, thedisplay module 434 may also process input made to the user interface byway of input devices, such as the sensors 120.

Other modules 436 may also be stored within the memory 420. In oneimplementation, a data handler module may be configured to generate dataindicative of the user 116, the tote 118, or another of one or moreobjects in range of the sensors 120 of the tote 118. For example, thedata handler module may be configured to acquire data from one or moresensors 120 of the tote 118 and generate sensor data 332. For example,the sensor data 332 may comprise information from the magnetometer120(12) indicative of orientation of the structure 402. The sensor data332 may be stored in the data store 424 and may be sent to the server204 for further processing. Other data 438 may also be stored within thedata store 424. For example, configuration settings, pre-storedactivation sequences, user interface preferences, item data, and soforth, may be stored within the data store 424.

The other modules 436 may also include a user authentication module,which may be configured to receive input and authenticate or identify aparticular user 116. For example, the user 116 may enter a personalidentification number (PIN) or may provide a fingerprint to afingerprint reader to establish their identity.

The inventory management module 324 may be configured to use the imagedata from the one or more cameras 120(1) of the fixture 128 to track thetote 118, determine interactions between the user 116 and the tote 118,track items 104 entering or leaving the tote 118, and so forth. Forexample, the items 104 may be tracked by one of the cameras 120(1) asthe items are moving from the inventory location 114 to the tote 118, orvice versa.

FIG. 5 illustrates a side view 500 of an aisle 112 in the facility 102and depicting the fixture 128 overhead to which one or more cameras120(1) and light sources 130 are affixed or otherwise supported,according to some implementations.

Depicted in FIG. 5 is a floor 502 of the facility 102 with the ceiling504 above. In this side view 500, inventory location 114(1) is to oneside of the aisle 112 while inventory location 114(2) is to the otherside of the aisle 112. The aisle 112 has an aisle width 506 extendingbetween the inventory locations 114(1) and 114(2).

Located above the inventory locations 114(1) and 114(2) are one or moretracking cameras 508. The tracking camera 508 comprises one or morecameras 120(1). The tracking cameras 508 are configured to generateimages 334 suitable for tracking objects such as users 116, totes 118,and so forth, as the objects move or are moved within the facility 102.The tracking cameras 508 may operate using one or more wavelengths oflight, such as infrared, visible, ultraviolet, and so forth. Thetracking cameras 508 are configured with their FOV 124 directedgenerally downward toward the floor 502. The tracking camera 508 may bemounted above the fixture 128 or may be mounted on or to the fixture128. For example, the tracking camera 508 may be suspended from theceiling 504. In another example, one or more of the tracking cameras 508may be located proximate to, or on, one or more of arms 514 describedbelow. The tracking camera 508 may be mounted higher than an expectedheight of the users 116 in the facility. For example, the trackingcamera 508 may be mounted more than two meters above the floor.

One or more ceiling supports 510 are configured to support a centralmember 512 of the fixture 128 from the ceiling 504. In someimplementations, the central member 512 may be supported at least 2meters above the floor 502, or may be so supported as to provideclearance below for the users 116. The ceiling supports 510 may compriserigid members such as rods or struts, flexible members such as chain orwire, and so forth. For example, the ceiling support 510 may comprise acable from which the fixture 128 is suspended. The central member 512may include one or more attachment points to which the ceiling supports510 may be coupled. For example, the attachment points may includerings, hooks, and so forth. In other implementations, the fixture 128may be supported from one or more inventory locations 114, may bemounted to a wall, or utilize a stand resting on the floor 502.

The central member 512 of the fixture 128 may comprise one or morecomponents. The components may comprise one or more of metal, plastic,composite materials, ceramic, wood, and so forth. For example, thecentral member 512 may comprise aluminum. In some implementations, thetracking camera 508 may be mounted on the central member 512. Also, asdescribed below in more detail, the central member 512 may include oneor more light sources 130. The central member 512 may include anelongated body. For example, the central member 512 may comprise a tube,beam, prismatic shape, and so forth. Continuing the example, the centralmember 512 may comprise a tube having a rectangular cross section.

Extending from the central member 512 may be one or more arms 514. Inone implementation, the arms 514 may comprise a portion of the centralmember 512. In another implementation, the arms 514 may compriseseparate components that are affixed or otherwise mechanically coupledto the central member 512 during assembly of the fixture 128. A firstarm 514(1) may extend from a first end of the central member 512 while asecond arm 514(2) may extend from a second end of the central member512, opposite the first end of the central member 512.

The arms 514 may have a constant cross-sectional profile. For example,the arm 514 may be a tube having a circular cross-section substantiallythe same at an end proximate to the central member 512 as well as distalfrom the central member 512. In other implementations, the arms 514 mayhave cross-sectional profiles that vary at different points along thearm 514. For example, the arm 514 may taper from a largercross-sectional area at a point proximate to the central member 512 downto a smaller cross-sectional area at a point distal from the centralmember 512. Continuing the example, the arm 514 may narrow down to a tipthat is smaller than a root.

The arm 514 may be configured to describe an arc extending downwardstowards the floor 502. For example, the tip of the arm 514 may be closerto the floor 502 then the base of the arm 514. The distal end of the arm514, relative to the central member 512, may be at least 2 meters abovethe floor 502 in some implementations. In another implementation, thearm 514 may comprise one or more straight sections forming a polygonalarc made up of straight sections describing overall an arc.

Mounted on the one or more arms 514 are one or more cameras 120(1). Thecameras 120(1) may be configured to acquire images 334 suitable forprocessing by the image analysis module 328. In some implementations,the hardware of the cameras 120(1) may be the same regardless of use. Inother implementations, the cameras 120(1) may be designed or modifiedfor a particular purpose.

The fixture 128 may include one or more of user identification cameras516, item identification cameras 518, or both. The user identificationcameras 516 comprise cameras 120(1) having a position on the fixture 128and an FOV 124 suitable for acquiring images of at least a portion ofthe user 116, such as the face of the user 116. As illustrated here, theuser identification camera 516 is mounted on the arm 514 proximate to anend of the arm 514 that is proximal to the central member 512. The FOV124 of the user identification camera 516 may be directed slightlydownwards towards the floor 502 and also away from the central member512 such that the FOV 124 is directed lengthwise along the aisle 112.For example, a centerline of the FOV 124 may describe a non-zero anglewith respect to the long axis of the central member 512. With thisconfiguration, the FOV 124 is such that the user identification camera516 acquires images 334 of the face of the user 116 as they move throughthe aisle 112.

The item identification cameras 518 may also be mounted to the arm 514.The item identification cameras 518 comprise cameras 120(1) having aposition on the fixture 128 and an FOV 124 suitable for acquiring imagesof at least a portion of the items 104 at or near the inventorylocations 114. As illustrated here, the item identification camera 518may be mounted on the arm 514 proximate to an end of the arm 514 that isdistal from the central member 512. For example, the item identificationcamera 518 may be mounted at or near a tip of the arm 514. The itemidentification camera 518 may thus be mounted below a level of the useridentification camera 516. In some implementations, the positions of theuser identification camera 516 and the item identification camera 518may be swapped.

The FOV 124 of the item identification camera 518 may be directeddownwards and configured to include at least a portion of an inventorylocation 114. In some implementations, the item identification camera518 may be configured such that the FOV 124 encompasses at least aportion of the inventory location 114 on an opposing side of the aisle112.

The item identification camera 518 may be mounted on the arm 514 abovethe inventory location 114(1) and may be configured with an FOV 124 thatincludes the inventory location 114(2) that is generally below an arm514 on an opposite end of the central member 512. The inventory location114(2) may be directly beneath the arm 514 or underneath and to oneside. For example, the FOV 124 of the item identification camera 518 maybe directed below horizontally, such as toward the floor 502. The itemidentification camera 518 may be configured to look slightly away fromthe central member 512, such that the inventory location 114 within theFOV 124 is located to one side of a long axis of the central member 512.Continuing the example, the FOV 124 may look to the left or right of thelong axis of the central member 512, such that a centerline of the FOV124 may describe an angle greater than zero relative to the long axis.Stated another way, the item identification camera 518 may have a FOV124 that includes an inventory location 114 that is to the right or tothe left of the inventory location 114 beneath the fixture 128.

The FOV 124 of the item identification camera 518 may have a lowermostedge that describes an item angle 520 of about 50° relative to aperpendicular line extending from a vertical face of an item 104 of theinventory location 114. For example, consider where the item 104comprises a cube shaped box resting on a shelf of the inventory location114. A perpendicular line may extend from the face of the cube outtowards the center of the aisle 112. The item angle 520 may comprise theangle between that perpendicular line and a lowermost edge of the FOV124 of the item identification camera 518.

By placing the user identification cameras 516 and the itemidentification cameras 518 as described, the image analysis module 328may be provided with images 334 suitable for supporting operation of thefacility 102. For example, the user identification camera 516 mayacquire a first image 334(1). The image 334(1) may depict at least aportion of a face of the user 116. The image analysis module 328 may useone or more of the facial recognition techniques described above toidentify the user 116 based at least in part on the image 334(1).

Similarly, the item identification camera 518 may acquire a second image334(2). The image 334(2) may depict at least a portion of the inventorylocation 114 containing one or more items 104. In other situations, theimage 334(2) may depict the user 116 interacting with an item 104 at theinventory location 114, such as picking or placing the item 104 from theinventory location 114. The image analysis module 328 may identify theone or more items 104 based at least in part on the image 334(2).

In other implementations, the image analysis module 328 may use images334 from one or more of the user identification camera 516 or the itemidentification camera 518 in order to perform one or more of identifyingthe item 104, identifying the user 116, and so forth. For example,images 334 acquired from the user identification camera 516 may be usedto identify an item 104.

One or more tracking cameras 508 may be mounted on one or more of thecentral member 512 or the arm 514. For example, a tracking camera 508may be mounted to a proximal portion of the arm 514, looking downwardtoward the area in front of the inventory location 114. In anotherexample, the tracking camera 508 may be mounted at a midpoint along thelong axis of the central member 512.

For ease of illustration, and not necessarily as a limitation, a set ofthree mutually orthogonal axes X, Y, and Z are depicted. The X and Yaxes are within a horizontal plane, while the Z axis is vertical.Directions along the Z axis may be described as vertical 522, whiledirections along the X axis or Y axis may be described as horizontal524. The Z axis may be generally aligned with the local gravitationalfield.

The fixture 128 may include one or more light sources 130. The lightsources 130 are configured to generate light 526 using one or more of anincandescent bulb, an LED, an electroluminescent device, a quantum dot,a fluorescent bulb, and so forth. The light 526 emitted by the lightsources 130 may be infrared, visible, ultraviolet, or a combination ofone or more of these lights 526. The one or more light sources 130 maybe mounted to or supported by the central member 512. The one or morelight sources 130 mounted to the central member 512 may be configured toprovide directed or focused light 526. The one or more light sources 130mounted to the central member 512 may be configured to diffuse light526.

A first subset of one or more of the light sources 130 may be arrangedproximate or near to the user identification camera 516. For example,one or more LEDs may be arranged in an annulus around the lens of theuser identification camera 516. The first subset of the one or morelight sources 130 may be configured to direct visible light 526 alongthe FOV 124 of the user identification camera 516. The light 526 mayprovide illumination to facilitate acquisition of the image 334 of theuser 116.

The light 526 may also serve to conceal or render unobtrusive the useridentification camera 516. For example, a user 116 within the FOV 124who gazes at the user identification camera 516 would see the light 526from the first subset of the one or more light sources 130. In someimplementations, the light sources 130 may be configured to providediffuse light 526 or may include reflectors, lenses, or other devicesconfigured to provide a focused or directed beam of light 526. Thediffuse light 526 may be of sufficient intensity to dissuade the user116 from peering at the user identification camera 516.

A second subset of one or more light sources 130 may be arrangedproximate or near to the item identification camera 518. For example,one or more LEDs may be adjacent to the lens of the item identificationcamera 518. As above, the second subset of the one or more light sources130 may be configured to direct light 526 along the FOV 124 of the itemidentification camera 518. For example, the light 526 may illuminate theitems 104 on the inventory location 114. Similar to those describedabove with regard to the user identification camera 516, in someimplementations, light sources 130 may be configured to provide diffuselight 526 or may include reflectors, lenses, or other devices configuredto provide a focused or directed beam of light 526. The light 526,whether focused or diffuse, may be of a sufficient intensity to dissuadethe user 116 from peering at the item identification camera 518.

The fixture 128 may provide various utilities to the devices mountedthereto, such as electrical power, communications, and so forth. Forexample, the fixture 128 may include a communication interface coupledto the user identification camera 516, the item identification camera518, the light sources 130, and so forth. Continuing the example, thecommunication interface may provide electrical power to the useridentification camera 516, the item identification camera 518, the lightsources 130, and so forth. For example, the communication interface maycomprise a USB interface, Power over Ethernet (PoE) interface, and soforth. The communication interface may be configured to send the imagedata 126 to the server 204 or other devices.

While the fixture 128 is depicted above the aisle 112, in otherimplementations the fixture 128 may be located at other positions withinthe facility 102. For example, the fixture 128 may be mounted above anend-cap at an end of an aisle 112, above an inventory location 114 suchas a counter, or at other locations within the facility 112.

FIG. 6 illustrates an overhead view 600 of the fixture 128, according tosome implementations. In this illustration, a single fixture 128 isdepicted. The fixture 128 includes light sources 130, four useridentification cameras 516, and four item identification cameras 518.While four cameras 120(1) are depicted, in other implementations otherquantities of cameras 120(1) may be used.

A long axis 602 extends through the central member 512. For example, thelong axis 602 may extend from one side of the aisle 112 to another asdepicted in the illustrations herein. A perpendicular axis 604 is alsodepicted extending perpendicular to the long axis 602.

Each FOV 124 may be considered to have a centerline of FOV 606. Thecenterline of FOV 606 may extend along a center of an angle described bythe FOV 124 and originating from a lens of a camera 120(1) or imagingsensor. The angle may be a solid angle or an angle within a particularplane. In some implementations, the edges of the FOV 124 may besymmetrical or asymmetrical with respect to a mechanism of the camera120(1).

As depicted in this illustration, the user identification cameras 516are depicted such that their respective centerline of FOVs 606 aredirected along the perpendicular axis 604. Stated another way, thecenterline of FOV 606 of the user identification camera 516 is moreparallel to the perpendicular axis 604 than the long axis 602. Forexample, the FOV 124 of the user identification camera 516 is down thelength of the aisle 112.

In comparison, a centerline of FOV 606 of the item identification camera518 is directed along the long axis 602, to the inventory location 114across the aisle 112 and to one side of the fixture 128. Stated anotherway, the centerline of FOV 606 of the item identification camera 518 ismore parallel to the long axis 602 than the perpendicular axis 604.

FIG. 7 illustrates an overhead view 700 of the aisle 112 in the facility102 including a plurality of fixtures 128, according to someimplementations. A plurality of apparatuses such as fixtures 128(1),128(2), . . . , 128(F) may be arranged adjacent or side-by-side to oneanother as depicted here. Each fixture 128 may support useridentification cameras 516, item identification cameras 518, trackingcameras 508, light sources 130, and so forth. In this illustration, thetracking cameras 508 are located between the fixtures 128 generallyalong a centerline of the aisle 112. In another implementation, thetracking cameras 508 may be mounted to the arms 514, such as proximateto the user identification cameras 516. The tracking cameras 508 may besupported from the ceiling 504, from cross members or cables extendingbetween fixtures 128, and so forth.

As depicted, the fixtures 128 hold the cameras 120(1) such that therespective FOVs 124 allow for acquisition of images 334 throughout theaisle 112. For example, the item identification camera 518 of thefixture 128(3) looks across the aisle 112 with a FOV 124 that acquiresimages 334 of the inventory location 114(4) from one point of view. Theinventory location 114(4) is below, but not directly beneath, thefixture 128(3). In another example, the item identification camera 518of the fixture 128(3) has a FOV 124 that includes the inventory location114(4) that is adjacent to the inventory location 114(3) that isdirectly underneath the opposite arm 514 to that holding the itemidentification camera 518.

Meanwhile, the item identification camera 518 of the fixture 128(5)looks across the aisle 112 and acquires images 334 of the inventorylocation 114(4) from another point of view. In a similar fashion, thecameras 120(1) of the plurality of fixtures 128 acquire images 334 ofthe other inventory locations 114 and of users 116 as they movethroughout the facility 102.

In some implementations, the light sources 130 may extend parallel tothe perpendicular axis 604 and may be supported by two or more fixtures128. For example, the light sources 130 may comprise fluorescent lightsources mounted to either side of the center of the central member 512.

FIG. 8 illustrates a side view 800 of the aisle 112 in the facility 102,according to some implementations. In this illustration, the useridentification camera 516 on the fixture 128 used to acquire an image334 of the user 116 is depicted. A centerline of FOV 606 of the useridentification camera 516 is also depicted, directed generally towardsthe head of the user 116.

As the user 116 stands on the floor 502, a superior-inferior axis 802 ofthe body of the user 116 is depicted. A transverse line 804 is depictedas perpendicular to the superior-inferior axis 802. For example, thesuperior-inferior axis 802 may be parallel to the Z axis depicted. Thetransverse line 804 may thus comprise a line in the X-Y plane.

In some implementations, the image analysis module 328 may most reliablyidentify the face of the user 116 when the image 334 being processed isobtained at a user angle 806 angle of less than or equal to about 20degrees from the transverse line 804. For example, the optimal image 334provided to the image analysis module 328 may be that of the face of theuser 116 squarely in front of the user identification camera 516.Continuing the example, the face depicted in the optimal image 334 maybe zero yaw and zero pitch relative to the centerline of FOV 606.However, the image analysis module 328 may still operate with suitableaccuracy up to a user angle 806 or pitch of about 20 degrees or less.

The user identification camera 516 is depicted at a zenith position 808,such as when suspended from the arm 514 of the fixture 128. Thecenterline of FOV 606 of the user identification camera 516 in thezenith position 808 describes a user angle 806 of less than or equal toabout 20 degrees relative to the transverse line 804.

The placement of the user identification cameras 516 on the arm 514 ofthe fixture 128 provides sufficient height that the same image 334 mayinclude multiple faces, allowing for the identification of multipleusers 116. Furthermore, the orientation of the centerline of FOV 606 maybe made such that, beyond a threshold distance, the face of the user 116will be depicted in the image 334 with a user angle 806 of about 20degrees or less. As a result, the image analysis module 328 may be ableto reliably compare the face in the image 334 with previously storeddata to determine the identity of the user 116.

The processes discussed herein may be implemented in hardware, software,or a combination thereof. In the context of software, the describedoperations represent computer-executable instructions stored on one ormore computer-readable storage media that, when executed by one or moreprocessors, perform the recited operations. Generally,computer-executable instructions include routines, programs, objects,components, data structures, and the like that perform particularfunctions or implement particular abstract data types. Those havingordinary skill in the art will readily recognize that certain steps oroperations illustrated in the figures above may be eliminated, combined,or performed in an alternate order. Any steps or operations may beperformed serially or in parallel. Furthermore, the order in which theoperations are described is not intended to be construed as alimitation.

Embodiments may be provided as a software program or computer programproduct including a non-transitory computer-readable storage mediumhaving stored thereon instructions (in compressed or uncompressed form)that may be used to program a computer (or other electronic device) toperform processes or methods described herein. The computer-readablestorage medium may be one or more of an electronic storage medium, amagnetic storage medium, an optical storage medium, a quantum storagemedium, and so forth. For example, the computer-readable storage mediamay include, but is not limited to, hard drives, floppy diskettes,optical disks, read-only memories (ROMs), random access memories (RAMs),erasable programmable ROMs (EPROMs), electrically erasable programmableROMs (EEPROMs), flash memory, magnetic or optical cards, solid-statememory devices, or other types of physical media suitable for storingelectronic instructions. Further, embodiments may also be provided as acomputer program product including a transitory machine-readable signal(in compressed or uncompressed form). Examples of transitorymachine-readable signals, whether modulated using a carrier orunmodulated, include, but are not limited to, signals that a computersystem or machine hosting or running a computer program can beconfigured to access, including signals transferred by one or morenetworks. For example, the transitory machine-readable signal maycomprise transmission of software by the Internet.

Separate instances of these programs can be executed on or distributedacross any number of separate computer systems. Thus, although certainsteps have been described as being performed by certain devices,software programs, processes, or entities, this need not be the case,and a variety of alternative implementations will be understood by thosehaving ordinary skill in the art.

Additionally, those having ordinary skill in the art readily recognizethat the techniques described above can be utilized in a variety ofdevices, environments, and situations. Although the subject matter hasbeen described in language specific to structural features ormethodological acts, it is to be understood that the subject matterdefined in the appended claims is not necessarily limited to thespecific features or acts described. Rather, the specific features andacts are disclosed as exemplary forms of implementing the claims.

What is claimed is:
 1. A system comprising: a central member having anelongated body with a long axis and one or more attachment points tosupport the elongated body above a floor; a first camera mounted to thecentral member, the first camera configured to acquire images at a firstrate of at least a portion of a user; a second camera mounted to thecentral member, the second camera configured to acquire images at asecond rate of at least a portion of one or more items at an inventorylocation; and one or more light sources to illuminate one or more of thefloor or the inventory location.
 2. The system of claim 1, furthercomprising: a hardware processor configured to executecomputer-executable instructions to: receive a first image from thefirst camera, wherein the first image depicts the at least a portion ofthe user; identify the user based at least in part on the first image;receive a second image from the second camera, wherein the second imagedepicts the at least a portion of the one or more items at the inventorylocation; and identify the one or more items based at least in part onthe second image.
 3. The system of claim 1, wherein: a first portion ofthe one or more light sources illuminate a first field-of-view (FOV) ofthe first camera; and a second portion of the one or more light sourcesilluminate a second FOV of the second camera.
 4. An apparatuscomprising: a first member supported above a floor; a first armextending downward from the first member; a first camera for acquiringimages of a first object at a first rate, the first camera mounted tothe first arm extending downward from the first member; and a secondcamera for acquiring images of a second object at a second rate, thesecond camera mounted to the first arm extending downward from the firstmember.
 5. The apparatus of claim 4, further comprising: a first set ofone or more light sources proximate to the first camera, the first setof one or more light sources to illuminate a first field-of-view (FOV)of the first camera; and a second set of one or more light sourcesproximate to the second camera, the second set of one or more lightsources to illuminate a second FOV of the second camera.
 6. Theapparatus of claim 4, further comprising: a third camera mounted to thefirst member, wherein the third camera has a field-of-view (FOV)directed downward toward the floor.
 7. The apparatus of claim 4,wherein: the first camera is mounted at a proximal end of the first armrelative to the first member; and the second camera is mounted at adistal end of the first arm relative to the first member.
 8. Theapparatus of claim 4, wherein: the second camera is mounted below alevel of the first camera such that the second camera is closer to thefloor.
 9. The apparatus of claim 4, wherein: the first arm tapers from afirst cross-sectional area proximate to the first member to a secondcross-sectional area at a point distal from the first member; and thefirst cross-sectional area is larger than the second cross-sectionalarea.
 10. The apparatus of claim 4, further comprising: a ceilingsupport having one or more of a rigid or flexible member suspending thefirst member from a ceiling.
 11. The apparatus of claim 4, furthercomprising: a second arm extending from an end of the first member; athird camera mounted to the second arm extending from the second end ofthe first member, wherein the third camera has a first field-of-view(FOV) directed away from the first member; and a fourth camera mountedto the second arm extending from the second end of the first member,wherein the fourth camera has a second FOV directed to include aninventory location located below the first member.
 12. The apparatus ofclaim 4, further comprising: a communication interface coupled to thefirst camera and the second camera, wherein the communication interfaceis configured to: provide electrical power to the first camera and thesecond camera; and send, to a computing device, one or more images fromone or more of the first camera or the second camera.
 13. A systemcomprising: an apparatus comprising: a first member; a first cameramounted to the first member, wherein the first camera is configured toacquire images at a first rate of at least a portion of a user; and asecond camera mounted to the first member, wherein the second camera isconfigured to acquire images at a second rate of at least a portion ofone or more items at an inventory location.
 14. The system of claim 13,further comprising: a computing device comprising a hardware processorconfigured to execute computer-executable instructions to: receive firstimage data from the first camera; identify the user appearing in thefirst image data; receive second image data from the second camera; andidentify an item appearing in the second image data.
 15. The system ofclaim 13, wherein a field-of-view (FOV) of the second camera is directedbelow a second apparatus.
 16. The system of claim 13, wherein: theapparatus further comprises a first arm extending from the first member;the first camera and the second camera are mounted to the first armextending from the first member; and the apparatus is supported suchthat the first arm is at least 2 meters above a floor.
 17. The system ofclaim 13, further comprising a plurality of inventory locations arrangedalong at least one side of an aisle, wherein the apparatus issubstantially perpendicular to a long axis of the aisle.
 18. The systemof claim 13, further comprising: a third camera mounted to the firstmember, wherein the third camera has a field-of-view (FOV) directeddownward; and a computing device comprising a hardware processorconfigured to execute computer-executable instructions to: receive imagedata from the third camera; and track, within a facility, a location ofone or more of the user or an object appearing in the image data. 19.The system of claim 13, further comprising: a first set of one or morelight sources proximate to the first camera, the first set of one ormore light sources to illuminate a first field-of-view (FOV) of thefirst camera; and a second set of one or more light sources proximate tothe second camera, the second set of one or more light sources toilluminate a second FOV of the second camera.
 20. The system of claim13, wherein: the apparatus is arranged above an aisle; a firstfield-of-view (FOV) of the first camera is directed towards an end ofthe aisle; and a second FOV of the second camera is directed towards aside of the aisle.
 21. An apparatus comprising: a first member supportedabove a floor; a first camera for acquiring images of a first object ata first rate, the first camera mounted to the first member; a secondcamera for acquiring images of a second object at a second rate, thesecond camera mounted to the first member; and a third camera mounted tothe first member, wherein the third camera has a field-of-view (FOV)directed downward towards the floor.